1. Technical Field
The present disclosure relates generally to data encoding, and more specifically to encoding of plain ASCII (American Standard Code for Information Interchange) data streams.
2. Related Art
ASCII is a well known coding standard for representing various characters that commonly occur in written languages such as English. Plain ASCII uses 7-bit encoding to represent 128 specified characters—the numbers 0-9, the letters a-z and A-Z, some basic punctuation symbols, some control codes that originated with Teletype machines, and a blank space.
Plain ASCII is distinguished from extended ASCII, where the eighth bit (of a byte representation) is also used for encoding additional characters common in other languages such as Latin and its derivatives. If a byte is used to represent characters, plain ASCII characters would have a 0 in the most significant bit, while a 1 in that position is used to represent the extended ASCII.
A plain ASCII data stream is an ordered sequence of plain ASCII codes, with each code representing a corresponding character. In other words, the ordered sequence of characters is represented as a corresponding plain ASCII data stream, with each character having a corresponding position in the ordered sequence.
There may be a need to further encode such plain ASCII data streams, for example, to obtain better compression, etc. Aspects of the present disclosure provide for such encoding techniques, as described below.
In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number.